The present invention relates to the field of programmable devices, and the systems and methods for detecting and compensating for unwanted offset voltages in the same. Programmable devices, such as FPGAs, typically includes thousands of programmable logic cells that use combinations of logic gates and/or look-up tables to perform a logic operation. Programmable devices also include a number of functional blocks having specialized logic devices adapted to specific logic operations, such as adders, multiply and accumulate circuits, phase-locked loops, and memory. The logic cells and functional blocks are interconnected with a configurable switching circuit. The configurable switching circuit selectively routes connections between the logic cells and functional blocks. By configuring the combination of logic cells, functional blocks, and the switching circuit, a programmable device can be adapted to perform virtually any type of information processing function.
Programmable devices can include analog comparators, differential amplifiers, and other circuits used to process or compare analog signals. Applications for comparators, differential amplifiers, and other circuits can include analog to digital conversion, signal filtering, and other control and signal processing applications. Ideally, the inputs of comparators and differential amplifiers have balanced, or matching, electrical impedances. Balanced input impedances ensure that the response of a comparator or differential amplifier is not biased towards one of its inputs. Unbalanced or mismatched input impedances can create an unwanted offset voltage at an input of a comparator or differential amplifier. Balanced input impedances also reduce the noise level, increasing the sensitivity and accuracy of the comparator or differential amplifier.
There are two primary sources of impedance mismatches. Systemic impedance mismatches occur when the source of one input signal has a different impedance then the source of the other input signal. Systemic impedance mismatches can be reduced or eliminated through careful system design. Random impedance mismatches may arise from manufacturing variations in devices, temperature changes, and device aging effects. Random impedance mismatches cannot be eliminated by system design.
One prior approach to reducing or eliminating random impedance mismatches is to increase the size of the transistors and other devices forming the comparator or differential amplifier. Typically, the random offset decreases in proportion to the inverse square root of the device area.
Another prior approach to compensating for random impedance mismatches includes an impedance trimming circuit. The impedance trimming circuit includes resistors, current sources, or other components that can be used to deliberately add or subtract impedance from one or more inputs. The impedance trimming circuit includes fuses or other one-time programmable links that can be used to selectively add or subtract impedances from each input. During manufacturing, the input impedances of each device are measured and the appropriate fuses are blown or cut to set corresponding compensating impedances for the inputs. One disadvantage with this approach is that the compensating impedances are fixed for the life of the device, which means random impedance mismatches arising from aging effects or temperature changes cannot be corrected. Additionally, the testing and setting of compensating input impedances adds steps to the manufacturing process, substantially increasing costs.
Another prior approach uses a dedicated impedance compensation circuit that automatically measures and compensates for random impedance mismatches. However, dedicated impedance compensation circuits require substantial time to design correctly. Because the design of the impedance compensation circuit is fixed, the algorithm cannot be updated, improved, or tailored to specific applications or designs. Additionally, dedicated impedance compensation circuits require substantial device area to implement. Programmable devices have to be adaptable to numerous different designs. Many of these designs may not require the use of comparators or differential amplifiers. Thus, the space required for a dedicated impedance compensation circuit is wasted.
It is therefore desirable for programmable devices to include a system and method for automatically compensating for input impedance mismatches to eliminate or reduce unwanted offset voltages. It is further desirable for the system and method to accommodate updates and improvements after the manufacturing of the device is complete, and to allow for tailoring the impedance compensation to specific user designs. It is also desirable for the system and method to be capable of changing the compensating input impedances at any time following the manufacturing of the device to account for aging effects, temperature effects, or any other changes in input impedances over time. It is also desirable for the system of automatically compensating for input impedance mismatches to require minimal space overhead so as to minimize device cost and to not unduly burden user designs that do not require any impedance compensation.